package com.fessc.develop.handler.processor.callback;

import com.fessc.develop.base.CCBResult;
import com.fessc.develop.entity.ccbvo.CCBResponseBodyVo;
import com.fessc.develop.entity.ccbvo.CCBSettleTradeCallBackVo;
import com.fessc.develop.entity.ccbvo.CCBPrePaymentCallBackVo;

public interface CCBICallBackProcessor {

    /**
     * 接口服务码
     */
    String getServiceCode();

    /**
     * 预付款、退款交易结果回调
     * @param ccbPrePaymentCallBackVo 回调报文
     * @return 返回结果
     */
    CCBResult<CCBResponseBodyVo> paymentStatusProcess(CCBPrePaymentCallBackVo ccbPrePaymentCallBackVo);

    /**
     * 跨境付汇交易结果回调
     * @param ccbSettleTradeCallBackVo 回调报文
     * @return 返回结果
     */
    CCBResult<CCBResponseBodyVo> settleTradeStatusProcess(CCBSettleTradeCallBackVo ccbSettleTradeCallBackVo);

}
